Various mechanisms exist for out-of-band (OOB) server management. Typically a management console or system communicates with the baseboard management controller (BMC) of a server on a network. The OOB communications have the advantage of being able to communicate with the server when it is not booted up. The BMC typically operates on standby power, even when the server is not technically powered on. This enables the management console to access power operations, temperature and other data from sensors communicating with the server BMC. If the temperature of the server is too hot, for instance, the management console can prevent a power up, or initiate a shutdown prior to the server overheating.
The BMC includes a processor having its own “boot” code and “operational” code, typically stored in flash memory. The operational code defines what functions are available to be managed via the OOB connection. The operational code typically provides the interfaces for monitoring the server's health and chassis control. If the BMC operational code becomes corrupted, it will be difficult or impossible to manage the server via the OOB connection. The system may continue to operate with corrupted operational code, but the server management tasks may not work properly and the system typically cannot be turned off without the BMC functioning. Occasionally, it is also desirable to update the operational code with added, deleted or modified functionality, even if the code has not been corrupted.
Currently the operational code is updated manually. With the move toward deploying servers without floppy drives and CD-ROM drives, updating the operational code can be difficult. In some cases, a removable media drive must be connected to the server prior to attempting an update of the operational code. In other cases, the flash memory must be removed and loaded onto an external system to be rewritten in the lab or replaced. These methods increase the downtime of the server and may possibly lead to lost revenue for the owner of the server.